<!--SIF Implementation Specification 2.2-6 (March 17, 2008)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.sifinfo.org/infrastructure/2.x" xmlns:sif="http://www.sifinfo.org/infrastructure/2.x" elementFormDefault="qualified">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="imports/xml/xml.xsd" />
  <xs:complexType name="RoomInfoType">
    <xs:annotation>
      <xs:documentation>
							This object contains all of the information about a school's room. This object may contain a reference to a room type so
							that it may represent anything from a gym, cafeteria, to a standard classroom.  The StaffList element usually contains the homeroom teacher.
						</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="RoomNumber" minOccurs="0" type="xs:token">
        <xs:annotation>
          <xs:documentation>Room number as presented to the user/application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StaffList" minOccurs="0" nillable="true">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="StaffPersonalRefId" minOccurs="0" maxOccurs="unbounded" type="sif:IdRefType">
              <xs:annotation>
                <xs:documentation>GUID that identifies the staff person assigned to this room (e.g. the homeroom teacher).</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Description" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>
							Friendly name that can be assigned to the room (e.g. Staff Cafeteria).
						</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Building" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>Extra building information. In the future Building could become its own object in which case this element will need to be changed to a RefId. Currently it is only required as a free text field.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="HomeroomNumber" minOccurs="0" nillable="true" type="xs:normalizedString">
        <xs:annotation>
          <xs:documentation>When a room is designated as a homeroom it may have a different number. Usually blank when room is not a homeroom.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Size" minOccurs="0" nillable="true" type="xs:decimal">
        <xs:annotation>
          <xs:documentation>Size in square feet.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Capacity" minOccurs="0" nillable="true" type="xs:unsignedInt">
        <xs:annotation>
          <xs:documentation>Number of persons (usually students) that this room can hold.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PhoneNumber" minOccurs="0" nillable="true" type="sif:PhoneNumberType">
        <xs:annotation>
          <xs:documentation>Phone number for the room</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="RoomTypeRefId" minOccurs="0" nillable="true" type="sif:IdRefType">
        <xs:annotation>
          <xs:documentation>GUID that identifies the room type assigned to this room.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="SIF_Metadata" minOccurs="0" nillable="true" type="sif:SIF_MetadataType" />
      <xs:element name="SIF_ExtendedElements" minOccurs="0" nillable="true" type="sif:SIF_ExtendedElementsType" />
    </xs:sequence>
    <xs:attribute name="RefId" use="required" type="sif:RefIdType">
      <xs:annotation>
        <xs:documentation>GUID that identifies this room.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SchoolInfoRefId" use="required" type="sif:IdRefType">
      <xs:annotation>
        <xs:documentation>GUID that identifies the school that this room belongs to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

  <xs:element name="RoomInfo" type="sif:RoomInfoType" />

</xs:schema>